From af1f2351cd72cf29d80c4aa8a55ed909547bde3a Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Mon, 26 Jun 2017 14:05:20 +0300 Subject: [PATCH] Clarify how breaking changes should be handled before 1.0.0 --- src/doc/manifest.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/doc/manifest.md b/src/doc/manifest.md index 4671e3694..ff91d8bb7 100644 --- a/src/doc/manifest.md +++ b/src/doc/manifest.md @@ -18,10 +18,11 @@ All three of these fields are mandatory. Cargo bakes in the concept of [Semantic Versioning](http://semver.org/), so make sure you follow some basic rules: -* Before you reach 1.0.0, anything goes. +* Before you reach 1.0.0, anything goes, but if you make breaking changes, + increment the minor version. In Rust, breaking changes include adding fields to + structs or variants to enums. * After 1.0.0, only make breaking changes when you increment the major version. - In Rust, breaking changes include adding fields to structs or variants to - enums. Don’t break the build. + Don’t break the build. * After 1.0.0, don’t add any new public API (no new `pub` anything) in tiny versions. Always increment the minor version if you add any new `pub` structs, traits, fields, types, functions, methods or anything else. -- 2.30.2